package armazenamento;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;

import model.Anuncio;
import model.Usuario;

public class AnuncioCadastro {
	private HashMap<Usuario, List<Anuncio>> anuncios;
	private static AnuncioCadastro anuncioCadastro;
	
	public AnuncioCadastro(){
		anuncios = new HashMap<Usuario, List<Anuncio>>();
	}
	
	public void inserirAnuncio(Anuncio anuncio){
		Usuario usuario = anuncio.getUsuario();
		if(!anuncios.keySet().contains(usuario)){
			anuncios.put(usuario, new ArrayList<Anuncio>());
		}
		anuncios.get(usuario).add(anuncio);
	}
	public void removerAnuncio(Anuncio anuncio){
		anuncios.values().remove(anuncio);
	}

	public static AnuncioCadastro getIntance() {
		if(anuncioCadastro == null){
			anuncioCadastro = new AnuncioCadastro();
		}
		return anuncioCadastro;
	}
	public List<Anuncio> listaAnuncios(){
		List<Anuncio> lista = new ArrayList<Anuncio>();
		anuncios.values().forEach(a -> a.forEach(a1 -> lista.add(a1)));
		return  lista;
	}
}
